Which Licensing API to Use?
If you have decided to license your application using Sentinel RMS API, then the next decision you need to make is whether to use the Traditional Licensing API or the Unified API.
The Unified API are introduced in RMS v9.0 and provide an alternative set of API functions for implementing licensing in your applications. Until now, the developers used the existing set of functions (such as VLSinitialize, VLS_REQUEST, VLS_UPDATE, VLS_RELEASE etc) for performing the typical licensing operations, such as requesting, updating, and releasing a license. Now, in RMS v9.0, the Unified API are introduced that eventually aim to replace the existing set of API. This is due to the reason that the Unified API provide a programmatically superior and scalable alternative to the existing API.
The salient features of the Unified API are as follows:
Compact API Set
The Unified API set is minimal, intuitive, and easy to remember with clear and simple semantics. The API functions use the concept of attributes (described in the Sentinel RMS SDK API Reference Guide) to enable scalable and consistent implementations.
Minimal Learning Curve for Quicker Integration
The Unified API functions are designed using modern principles for easy learning and integration. This makes your implementation less complex and effortless for developers to undertake. For example:
>The introduction of "attributes", which is based on the "key-value" pair concept, enables consistency in implementation and has taken away the overhead of using additional data structures or API functions for parameter setting.
>The Unified API consists of a pair of query API functions (sntl_licensing_get_info and sntl_licensing_get_session_info) that retrieve information in an XML-based output.
Futuristic Implementation
The Unified API are also offered as a part of the Sentinel Cloud Licensing (SCL) Add-on for RMS solution. Hence, these are extensible to handle integration needs for both on-premises and cloud connected licensing. For more details, contact your Thales Sales representative.
Recommendations Regarding the Unified API
Starting version 9.0, RMS strongly recommends the use of Unified API for new licensing implementations. For existing licensing implementations, the choice depends upon the complexity of the current implementation, underlying usage scenarios, and time-in-hand.
By upgrading to the Unified API, you can reap the following benefits:
>Switch to a compact licensing API set.
>Keep your licensing implementations in sync with the recent developments in Sentinel RMS.
>Open up a new world of opportunities for your product by integrating Cloud Connected Licensing.
NOTE Since RMS v9.0, the Unified API set includes support for the most-commonly used licensing operations. However, it may so happen that some of your licensing needs are still not met using the given functions, then contact Thales Technical Support for sharing your specific requirements. In future releases of Sentinel RMS, the Unified API set is planned to be extended for addressing more licensing use cases.
For further details about the Unified API, refer to the Chapter - Unified API of the Sentinel RMS SDK API Reference Guide
CAUTION! Using Both the API Sets Together in One Implementation
Both the traditional and Unified API are co-existing in the Sentinel RMS licensing libraries. And, you may also come across use cases that require you to use the two API together. However, you must not design an implementation that mixes the two. For example, for requesting a license, a traditional API is used and then for refreshing a license a Unified API is used. Furthermore, any handle from one set of API cannot be passed to the other set. For example, the handle returned by the sntl_licensing_login API must not be used in calling the LSUpdate API.
To view a comparison of Traditional and Unified API, click the following links: